package poly;

public class Client {
    public static void main(String[] args) {
  /*      People p = new People();
        p.feedCat(new Cat());
        p.feedDog(new Dog());*/


     Animal b=new Cat();//可以把猫当作动物来看,把子类的对象赋值给父类的引用(变量)向上转型,会屏蔽掉子类中特有的方法
     Animal a=new Dog();

      // b.catchMouse(); 站在动物的角度是不能抓老鼠的
        People p = new People();
        p.feed(a);
        p.feed(b);

        //向下转型
        Cat c=(Cat)b;
        c.catchMouse();//猫又可以抓老鼠了
    }


}
